// 后续需要导出的数据对象
const formObj = {
  pieChart: [],
  histogram: [],
  brokenLine: [],
}

/**
 * @渲染集中配置方法
 *
 * @type 需要渲染的图表类型，支持类型如下:
 *  pieChart 饼状图
 *  histogram 柱状图
 *  brokenLine 折线图
 *
 * @list 渲染的数组，每个成员为echarts指定的渲染对象
 *
 */
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

export const setChart = () => {
  formObj.pieChart = []
  formObj.histogram = []
  formObj.brokenLine = []

  return function (type, list) {
    // 防错判断执行
    if (!type || !list) {
      console.error(`type和list参数不能为空，请检查后，重新使用！！！`)
      return
    } else if (typeof type !== 'string' || !Array.isArray(list)) {
      console.error(
        `type参数应该为string类型，list参数应该为Array类型，请检查对应的参数类型是否正确！`
      )
      return
    }

    // 然后判断传入的type是否是支持的类型
    // ---------------------------------------------------------------------------------------------
    const isType = Object.keys(formObj)

    if (!isType.includes(type)) {
      console.error(
        `当前传入的type为无效值，type仅支持${isType.toString()};当前type为${type}`
      )

      return
    }

    // 同步对应的数组
    formObj[type] = list
  }
}

export const chart = formObj
